/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package bean;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author André
 */
@Entity
@Table(name = "tpedido_compra", schema = "compras")
public class PedidoCompra implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "tcodigo_pk")
    private Integer tcodigo_pk;
    @Column(name = "tcod_fornecedor_fk", nullable = false)
    private Integer tcod_fornecedor_fk;
    @Id
    @Column(name = "tunidade_fk", nullable = false)
    private Integer tunidade_fk;
    @Column(name = "tdata", nullable = false)
    private String tdata;
    @Column(name = "tcondicao_compra_fk", nullable = false)
    private Integer tcondicao_compra_fk;
    @Column(name = "tdata_previsao_faturamento", nullable = false)
    private String tdata_previsao_faturamento;
    @Column(name = "tacordo_frete", nullable = false, length = 20)
    private String tacordo_frete;
    @Column(name = "tvalor_pedido", nullable = false, precision = 16, scale = 2)
    private BigDecimal tvalor_pedido;
    @Column(name = "tsaldo_a_entregar", nullable = false, precision = 16, scale = 2)
    private BigDecimal tsaldo_a_entregar;
    @Column(name = "tqtde_itens_merc", nullable = false)
    private Integer tqtde_itens_merc;
    @Column(name = "tobs", length = 500)
    private String tobs;
    @Column(name = "tstatus_pedido_chk", nullable = false, length = 1)
    private String tstatus_pedido_chk;
    @Column(name = "tusuario_comprador_fk", nullable = false)
    private Integer tusuario_comprador_fk;
    @Column(name = "tvalor_bruto", nullable = false, precision = 16, scale = 2)
    private BigDecimal tvalor_bruto;
    @Column(name = "tdesconto_perc", nullable = false, precision = 5, scale = 2)
    private BigDecimal tdesconto_perc;
    @Column(name = "tdesconto_valor", nullable = false, precision = 16, scale = 2)
    private BigDecimal tdesconto_valor;
    @Column(name = "tvalor_liquido_pedido", nullable = false, precision = 16, scale = 2)
    private BigDecimal tvalor_liquido_pedido;
    @Column(name = "tcotacao_fk")
    private Integer tcotacao_fk;
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "pedidoCompra")
    private List<PedidoCompraItem> pedidoCompraItemList;

    public PedidoCompra() {
        this.tacordo_frete = "";
        this.tcod_fornecedor_fk = -1;
        this.tcodigo_pk = -1;
        this.tcondicao_compra_fk = -1;
        this.tcotacao_fk = -1;
        this.tdata = "";
        this.tdata_previsao_faturamento = "";
        this.tdesconto_perc = new BigDecimal(-1);
        this.tdesconto_valor = new BigDecimal(-1);
        this.tobs = "";
        this.tqtde_itens_merc = -1;
        this.tsaldo_a_entregar = new BigDecimal(-1);
        this.tstatus_pedido_chk = "";
        this.tunidade_fk = -1;
        this.tusuario_comprador_fk = -1;
        this.tvalor_bruto = new BigDecimal(-1);
        this.tvalor_liquido_pedido = new BigDecimal(-1);
        this.tvalor_pedido = new BigDecimal(-1);
    }

    public List<PedidoCompraItem> getPedidoCompraItemList() {
        return pedidoCompraItemList;
    }

    public void setPedidoCompraItemList(List<PedidoCompraItem> pedidoCompraItemList) {
        this.pedidoCompraItemList = pedidoCompraItemList;
    }

    public String getTacordo_frete() {
        return tacordo_frete;
    }

    public void setTacordo_frete(String tacordo_frete) {
        this.tacordo_frete = tacordo_frete;
    }

    public Integer getTcod_fornecedor_fk() {
        return tcod_fornecedor_fk;
    }

    public void setTcod_fornecedor_fk(Integer tcod_fornecedor_fk) {
        this.tcod_fornecedor_fk = tcod_fornecedor_fk;
    }

    public Integer getTcodigo_pk() {
        return tcodigo_pk;
    }

    public void setTcodigo_pk(Integer tcodigo_pk) {
        this.tcodigo_pk = tcodigo_pk;
    }

    public Integer getTcondicao_compra_fk() {
        return tcondicao_compra_fk;
    }

    public void setTcondicao_compra_fk(Integer tcondicao_compra_fk) {
        this.tcondicao_compra_fk = tcondicao_compra_fk;
    }

    public Integer getTcotacao_fk() {
        return tcotacao_fk;
    }

    public void setTcotacao_fk(Integer tcotacao_fk) {
        this.tcotacao_fk = tcotacao_fk;
    }

    public String getTdata() {
        return tdata;
    }

    public void setTdata(String tdata) {
        this.tdata = tdata;
    }

    public String getTdata_previsao_faturamento() {
        return tdata_previsao_faturamento;
    }

    public void setTdata_previsao_faturamento(String tdata_previsao_faturamento) {
        this.tdata_previsao_faturamento = tdata_previsao_faturamento;
    }

    public BigDecimal getTdesconto_perc() {
        return tdesconto_perc;
    }

    public void setTdesconto_perc(BigDecimal tdesconto_perc) {
        this.tdesconto_perc = tdesconto_perc;
    }

    public BigDecimal getTdesconto_valor() {
        return tdesconto_valor;
    }

    public void setTdesconto_valor(BigDecimal tdesconto_valor) {
        this.tdesconto_valor = tdesconto_valor;
    }

    public String getTobs() {
        return tobs;
    }

    public void setTobs(String tobs) {
        this.tobs = tobs;
    }

    public Integer getTqtde_itens_merc() {
        return tqtde_itens_merc;
    }

    public void setTqtde_itens_merc(Integer tqtde_itens_merc) {
        this.tqtde_itens_merc = tqtde_itens_merc;
    }

    public BigDecimal getTsaldo_a_entregar() {
        return tsaldo_a_entregar;
    }

    public void setTsaldo_a_entregar(BigDecimal tsaldo_a_entregar) {
        this.tsaldo_a_entregar = tsaldo_a_entregar;
    }

    public String getTstatus_pedido_chk() {
        return tstatus_pedido_chk;
    }

    public void setTstatus_pedido_chk(String tstatus_pedido_chk) {
        this.tstatus_pedido_chk = tstatus_pedido_chk;
    }

    public Integer getTunidade_fk() {
        return tunidade_fk;
    }

    public void setTunidade_fk(Integer tunidade_fk) {
        this.tunidade_fk = tunidade_fk;
    }

    public Integer getTusuario_comprador_fk() {
        return tusuario_comprador_fk;
    }

    public void setTusuario_comprador_fk(Integer tusuario_comprador_fk) {
        this.tusuario_comprador_fk = tusuario_comprador_fk;
    }

    public BigDecimal getTvalor_bruto() {
        return tvalor_bruto;
    }

    public void setTvalor_bruto(BigDecimal tvalor_bruto) {
        this.tvalor_bruto = tvalor_bruto;
    }

    public BigDecimal getTvalor_liquido_pedido() {
        return tvalor_liquido_pedido;
    }

    public void setTvalor_liquido_pedido(BigDecimal tvalor_liquido_pedido) {
        this.tvalor_liquido_pedido = tvalor_liquido_pedido;
    }

    public BigDecimal getTvalor_pedido() {
        return tvalor_pedido;
    }

    public void setTvalor_pedido(BigDecimal tvalor_pedido) {
        this.tvalor_pedido = tvalor_pedido;
    }

    @Override
    public String toString() {
        return "bean.TpedidoCompraPK[tcodigoPk=" + tcodigo_pk + ", tunidadeFk=" + tunidade_fk + "]";
    }
}
